/*! For license information please see checkout.js.LICENSE.txt */ !function(modules) { var installedModules = {}; function __webpack_require__(moduleId) { if (installedModules[moduleId]) return installedModules[moduleId].exports; var module = installedModules[moduleId] = { i: moduleId, l: !1, exports: {} }; modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); module.l = !0; return module.exports; } __webpack_require__.m = modules; __webpack_require__.c = installedModules; __webpack_require__.d = function(exports, name, getter) { __webpack_require__.o(exports, name) || Object.defineProperty(exports, name, { enumerable: !0, get: getter }); }; __webpack_require__.r = function(exports) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); Object.defineProperty(exports, "__esModule", { value: !0 }); }; __webpack_require__.t = function(value, mode) { 1 & mode && (value = __webpack_require__(value)); if (8 & mode) return value; if (4 & mode && "object" == typeof value && value && value.__esModule) return value; var ns = Object.create(null); __webpack_require__.r(ns); Object.defineProperty(ns, "default", { enumerable: !0, value: value }); if (2 & mode && "string" != typeof value) for (var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); return ns; }; __webpack_require__.n = function(module) { var getter = module && module.__esModule ? function() { return module.default; } : function() { return module; }; __webpack_require__.d(getter, "a", getter); return getter; }; __webpack_require__.o = function(object, property) { return {}.hasOwnProperty.call(object, property); }; __webpack_require__.p = ""; __webpack_require__(__webpack_require__.s = 49); }([ function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.d(__webpack_exports__, "m", (function() { return BUTTON_STYLE_OPTIONS; })); __webpack_require__.d(__webpack_exports__, "f", (function() { return BUTTON_LABEL; })); __webpack_require__.d(__webpack_exports__, "e", (function() { return BUTTON_COLOR; })); __webpack_require__.d(__webpack_exports__, "i", (function() { return BUTTON_LOGO_COLOR; })); __webpack_require__.d(__webpack_exports__, "l", (function() { return BUTTON_SIZE; })); __webpack_require__.d(__webpack_exports__, "n", (function() { return BUTTON_TAGLINE_COLOR; })); __webpack_require__.d(__webpack_exports__, "k", (function() { return BUTTON_SHAPE; })); __webpack_require__.d(__webpack_exports__, "d", (function() { return BUTTON_BRANDING; })); __webpack_require__.d(__webpack_exports__, "g", (function() { return BUTTON_LAYOUT; })); __webpack_require__.d(__webpack_exports__, "j", (function() { return BUTTON_NUMBER; })); __webpack_require__.d(__webpack_exports__, "h", (function() { return BUTTON_LOGO; })); __webpack_require__.d(__webpack_exports__, "q", (function() { return CHECKOUT_OVERLAY_COLOR; })); __webpack_require__.d(__webpack_exports__, "v", (function() { return FUNDING; })); __webpack_require__.d(__webpack_exports__, "w", (function() { return FUNDING_BRAND_LABEL; })); __webpack_require__.d(__webpack_exports__, "o", (function() { return CARD; })); __webpack_require__.d(__webpack_exports__, "x", (function() { return FUNDING_ELIGIBILITY_REASON; })); __webpack_require__.d(__webpack_exports__, "p", (function() { return CARD_PRIORITY; })); __webpack_require__.d(__webpack_exports__, "u", (function() { return FPTI; })); __webpack_require__.d(__webpack_exports__, "r", (function() { return COUNTRY; })); __webpack_require__.d(__webpack_exports__, "y", (function() { return LANG; })); __webpack_require__.d(__webpack_exports__, "z", (function() { return LANG_TO_DEFAULT_COUNTRY; })); __webpack_require__.d(__webpack_exports__, "a", (function() { return ALLOWED_INSTALLMENT_COUNTRIES; })); __webpack_require__.d(__webpack_exports__, "b", (function() { return ALLOWED_INSTALLMENT_PERIOD; })); __webpack_require__.d(__webpack_exports__, "t", (function() { return ENV; })); __webpack_require__.d(__webpack_exports__, "G", (function() { return USERS; })); __webpack_require__.d(__webpack_exports__, "F", (function() { return SOURCE; })); __webpack_require__.d(__webpack_exports__, "B", (function() { return LOG_LEVEL; })); __webpack_require__.d(__webpack_exports__, "C", (function() { return PAYMENT_TYPE; })); __webpack_require__.d(__webpack_exports__, "E", (function() { return PPTM_ID; })); __webpack_require__.d(__webpack_exports__, "c", (function() { return ATTRIBUTE; })); __webpack_require__.d(__webpack_exports__, "D", (function() { return PLATFORM; })); __webpack_require__.d(__webpack_exports__, "s", (function() { return DEFAULT; })); __webpack_require__.d(__webpack_exports__, "A", (function() { return LOCALE; })); var BUTTON_STYLE_OPTIONS = { LABEL: "label", SIZE: "size", SHAPE: "shape", COLOR: "color", LAYOUT: "layout", MAXBUTTONS: "maxbuttons", FUNDINGICONS: "fundingicons", BRANDING: "branding", TAGLINE: "tagline", HEIGHT: "height", INSTALLMENTPERIOD: "installmentperiod" }; var BUTTON_LABEL = { PAYPAL: "paypal", CHECKOUT: "checkout", PAY: "pay", CREDIT: "credit", CARD: "card", BUYNOW: "buynow", INSTALLMENT: "installment", VENMO: "venmo", ITAU: "itau", IDEAL: "ideal", ELV: "elv", BANCONTACT: "bancontact", GIROPAY: "giropay", SOFORT: "sofort", EPS: "eps", MYBANK: "mybank", P24: "p24", BLIK: "blik", MAXIMA: "maxima", BOLETO: "boleto", OXXO: "oxxo", MERCADOPAGO: "mercadopago" }; var BUTTON_COLOR = { GOLD: "gold", BLUE: "blue", SILVER: "silver", BLACK: "black", DARKBLUE: "darkblue", WHITE: "white", TRANSPARENT: "transparent" }; var BUTTON_LOGO_COLOR = { BLUE: "blue", WHITE: "white", BLACK: "black", ANY: "any" }; var BUTTON_SIZE = { TINY: "tiny", SMALL: "small", MEDIUM: "medium", LARGE: "large", HUGE: "huge", RESPONSIVE: "responsive" }; var BUTTON_TAGLINE_COLOR = { BLACK: "black", BLUE: "blue" }; var BUTTON_SHAPE = { PILL: "pill", RECT: "rect" }; var BUTTON_BRANDING = { BRANDED: "branded", UNBRANDED: "unbranded" }; var BUTTON_LAYOUT = { HORIZONTAL: "horizontal", VERTICAL: "vertical" }; var BUTTON_NUMBER = { SINGLE: "single", MULTIPLE: "multiple" }; var BUTTON_LOGO = { PP: "pp", PAYPAL: "paypal", VENMO: "venmo", ITAU: "itau", CREDIT: "credit", IDEAL: "ideal", ELV: "elv", BANCONTACT: "bancontact", GIROPAY: "giropay", SOFORT: "sofort", EPS: "eps", MYBANK: "mybank", P24: "p24", BLIK: "blik", MAXIMA: "maxima", BOLETO: "boleto", OXXO: "oxxo", MERCADOPAGO: "mercadopago" }; var CHECKOUT_OVERLAY_COLOR = { BLACK: "black", WHITE: "white" }; var FUNDING = { PAYPAL: "paypal", VENMO: "venmo", ITAU: "itau", CREDIT: "credit", CARD: "card", IDEAL: "ideal", ELV: "elv", BANCONTACT: "bancontact", GIROPAY: "giropay", SOFORT: "sofort", EPS: "eps", MYBANK: "mybank", P24: "p24", ZIMPLER: "zimpler", BLIK: "blik", MAXIMA: "maxima", BOLETO: "boleto", OXXO: "oxxo", MERCADOPAGO: "mercadopago" }; var FUNDING_BRAND_LABEL = { PAYPAL: "PayPal", CREDIT: "PayPal Credit", CARD: "Debit or Credit Card" }; var CARD = { VISA: "visa", MASTERCARD: "mastercard", AMEX: "amex", DISCOVER: "discover", SWITCH: "switch", MAESTRO: "maestro", HIPER: "hiper", ELO: "elo", JCB: "jcb", CUP: "cup", COFINOGA: "cofinoga", COFIDIS: "cofidis", CETELEM: "cetelem", CBNATIONALE: "cbnationale" }; var FUNDING_ELIGIBILITY_REASON = { PRIMARY: "The funding source is the primary source", NOT_ENABLED: "The funding source is not currently enabled for use", SECONDARY_DISALLOWED: "The funding source is disallowed as a secondary button", OPT_OUT: "The funding source was disallowed in funding.disallowed", OPT_IN: "The funding source was allowed in funding.allowed", DISALLOWED_COUNTRY: "The funding source is not enabled for the current locale", DEFAULT_COUNTRY: "The funding source is enabled by default for the current locale", DEFAULT: "The funding source is enabled by default for all users", REMEMBERED: "The funding source was remembered for the current user", NEED_OPT_IN: "The funding source needs to be allowed in funding.allowed", COMMIT_NOT_SET: "The funding source is not enabled when commit is not set as true", INVALID_ENV: "The funding source is not supported in this environment" }; var CARD_PRIORITY = [ CARD.VISA, CARD.MASTERCARD, CARD.AMEX, CARD.DISCOVER, CARD.SWITCH, CARD.MAESTRO, CARD.HIPER, CARD.ELO, CARD.JCB, CARD.CUP, CARD.COFINOGA, CARD.COFIDIS, CARD.CETELEM, CARD.CBNATIONALE ]; var ENV = { LOCAL: "local", STAGE: "stage", SANDBOX: "sandbox", PRODUCTION: "production", TEST: "test", DEMO: "demo" }; var USERS = { ALL: "all", REMEMBERED: "remembered" }; var SOURCE = { MANUAL: "manual", BUTTON_FACTORY: "button_factory" }; var LOG_LEVEL = { DEBUG: "debug", INFO: "info", WARN: "warn", ERROR: "error" }; var PAYMENT_TYPE = { EC_TOKEN: "ec_token", BA_TOKEN: "ba_token", PAY_ID: "pay_id" }; var PPTM_ID = "xo-pptm"; var ATTRIBUTE = { BUTTON: "data-button", FUNDING_SOURCE: "data-funding-source", CARD: "data-card", VERSION: "data-version", LAYOUT: "data-layout", SIZE: "data-size", SMART_BUTTON_VERSION: "data-paypal-smart-button-version" }; var PLATFORM = { DESKTOP: "desktop", MOBILE: "mobile" }; var DEFAULT = "default"; var _CONTEXT_TYPE; var FPTI = { KEY: { FEED: "feed_name", STATE: "state_name", TRANSITION: "transition_name", BUTTON_TYPE: "button_type", SESSION_UID: "page_session_id", BUTTON_SESSION_UID: "button_session_id", TOKEN: "token", CONTEXT_ID: "context_id", CONTEXT_TYPE: "context_type", REFERER: "referer_url", PAY_ID: "pay_id", SELLER_ID: "seller_id", DATA_SOURCE: "serverside_data_source", BUTTON_SOURCE: "button_source", ERROR_CODE: "ext_error_code", ERROR_DESC: "ext_error_desc", PAGE_LOAD_TIME: "page_load_time", EXPERIMENT_NAME: "pxp_exp_id", TREATMENT_NAME: "pxp_trtmnt_id", TRANSITION_TIME: "transition_time", FUNDING_LIST: "eligible_payment_methods", FUNDING_COUNT: "eligible_payment_count", CHOSEN_FUNDING: "selected_payment_method", BUTTON_LAYOUT: "button_layout", BUTTON_COLOR: "button_color", BUTTON_SIZE: "button_size", BUTTON_SHAPE: "button_shape", BUTTON_LABEL: "button_label", BUTTON_WIDTH: "button_width", VERSION: "checkoutjs_version", MAX_BUTTONS: "max_buttons", FUNDING_REMEMBERED: "funding_remembered", BUTTON_TAGLINE_ENABLED: "button_tagline_enabled", RESPONSE_DURATION: "response_duration", PAYMENT_FLOW: "payment_flow", BUTTON_VERSION: "button_version", PAGE_TYPE: "pp_placement", TIMESTAMP: "t" }, BUTTON_TYPE: { IFRAME: "iframe", HTML: "html", CUSTOM: "custom" }, DATA_SOURCE: { CHECKOUT: "checkout" }, CONTEXT_TYPE: (_CONTEXT_TYPE = { BUTTON_SESSION_ID: "button_session_id" }, _CONTEXT_TYPE[PAYMENT_TYPE.PAY_ID] = "Pay-ID", _CONTEXT_TYPE[PAYMENT_TYPE.EC_TOKEN] = "EC-Token", _CONTEXT_TYPE[PAYMENT_TYPE.BA_TOKEN] = "EC-Token", _CONTEXT_TYPE), FEED: { CHECKOUTJS: "checkoutjs" }, STATE: { LOAD: "checkoutjs_load", BUTTON: "checkoutjs_button", CHECKOUT: "checkoutjs_checkout", PPTM: "checkoutjs_pptm" }, TRANSITION: { SCRIPT_LOAD: "process_script_load", BUTTON_RENDER: "process_button_render", BUTTON_LOAD: "process_button_load", BUTTON_CLICK: "process_button_click", BUTTON_RENDER_INTRANET_MODE: "process_button_render_intranet_mode", BUTTON_CLICK_INTRANET_MODE: "process_button_click_intranet_mode", CREATE_PAYMENT: "process_create_payment", RECIEVE_PAYMENT: "process_recieve_payment", CHECKOUT_INIT: "process_checkout_init", CHECKOUT_APPROVE: "process_checkout_approve", CHECKOUT_SHIPPING_CHANGE: "process_checkout_shipping_change", CHECKOUT_CANCEL: "process_checkout_cancel", CHECKOUT_ERROR: "process_checkout_error", EXTERNAL_EXPERIMENT: "process_external_experiment", EXTERNAL_EXPERIMENT_COMPLETE: "process_external_experiment_complete", PPTM_LOAD: "process_pptm_load", PPTM_LOADED: "process_pptm_loaded" } }; var _LANG_TO_DEFAULT_COUN; var COUNTRY = { AD: "AD", AE: "AE", AG: "AG", AI: "AI", AL: "AL", AM: "AM", AN: "AN", AO: "AO", AR: "AR", AT: "AT", AU: "AU", AW: "AW", AZ: "AZ", BA: "BA", BB: "BB", BE: "BE", BF: "BF", BG: "BG", BH: "BH", BI: "BI", BJ: "BJ", BM: "BM", BN: "BN", BO: "BO", BR: "BR", BS: "BS", BT: "BT", BW: "BW", BY: "BY", BZ: "BZ", C2: "C2", CA: "CA", CD: "CD", CG: "CG", CH: "CH", CI: "CI", CK: "CK", CL: "CL", CM: "CM", CN: "CN", CO: "CO", CR: "CR", CV: "CV", CY: "CY", CZ: "CZ", DE: "DE", DJ: "DJ", DK: "DK", DM: "DM", DO: "DO", DZ: "DZ", EC: "EC", EE: "EE", EG: "EG", ER: "ER", ES: "ES", ET: "ET", FI: "FI", FJ: "FJ", FK: "FK", FM: "FM", FO: "FO", FR: "FR", GA: "GA", GB: "GB", GD: "GD", GE: "GE", GF: "GF", GI: "GI", GL: "GL", GM: "GM", GN: "GN", GP: "GP", GR: "GR", GT: "GT", GW: "GW", GY: "GY", HK: "HK", HN: "HN", HR: "HR", HU: "HU", ID: "ID", IE: "IE", IL: "IL", IN: "IN", IS: "IS", IT: "IT", JM: "JM", JO: "JO", JP: "JP", KE: "KE", KG: "KG", KH: "KH", KI: "KI", KM: "KM", KN: "KN", KR: "KR", KW: "KW", KY: "KY", KZ: "KZ", LA: "LA", LC: "LC", LI: "LI", LK: "LK", LS: "LS", LT: "LT", LU: "LU", LV: "LV", MA: "MA", MC: "MC", MD: "MD", ME: "ME", MG: "MG", MH: "MH", MK: "MK", ML: "ML", MN: "MN", MQ: "MQ", MR: "MR", MS: "MS", MT: "MT", MU: "MU", MV: "MV", MW: "MW", MX: "MX", MY: "MY", MZ: "MZ", NA: "NA", NC: "NC", NE: "NE", NF: "NF", NG: "NG", NI: "NI", NL: "NL", NO: "NO", NP: "NP", NR: "NR", NU: "NU", NZ: "NZ", OM: "OM", PA: "PA", PE: "PE", PF: "PF", PG: "PG", PH: "PH", PL: "PL", PM: "PM", PN: "PN", PT: "PT", PW: "PW", PY: "PY", QA: "QA", RE: "RE", RO: "RO", RS: "RS", RU: "RU", RW: "RW", SA: "SA", SB: "SB", SC: "SC", SE: "SE", SG: "SG", SH: "SH", SI: "SI", SJ: "SJ", SK: "SK", SL: "SL", SM: "SM", SN: "SN", SO: "SO", SR: "SR", ST: "ST", SV: "SV", SZ: "SZ", TC: "TC", TD: "TD", TG: "TG", TH: "TH", TJ: "TJ", TM: "TM", TN: "TN", TO: "TO", TR: "TR", TT: "TT", TV: "TV", TW: "TW", TZ: "TZ", UA: "UA", UG: "UG", US: "US", UY: "UY", VA: "VA", VC: "VC", VE: "VE", VG: "VG", VN: "VN", VU: "VU", WF: "WF", WS: "WS", YE: "YE", YT: "YT", ZA: "ZA", ZM: "ZM", ZW: "ZW" }; var LANG = { AR: "ar", CS: "cs", DA: "da", DE: "de", EL: "el", EN: "en", ES: "es", FI: "fi", FR: "fr", HE: "he", HU: "hu", ID: "id", IT: "it", JA: "ja", KO: "ko", NL: "nl", NO: "no", PL: "pl", PT: "pt", RU: "ru", SK: "sk", SV: "sv", TH: "th", TR: "tr", ZH: "zh" }; var LANG_TO_DEFAULT_COUNTRY = ((_LANG_TO_DEFAULT_COUN = {})[LANG.AR] = COUNTRY.SA, _LANG_TO_DEFAULT_COUN[LANG.CS] = COUNTRY.CZ, _LANG_TO_DEFAULT_COUN[LANG.DA] = COUNTRY.DK, _LANG_TO_DEFAULT_COUN[LANG.DE] = COUNTRY.DE, _LANG_TO_DEFAULT_COUN[LANG.EL] = COUNTRY.GR, _LANG_TO_DEFAULT_COUN[LANG.EN] = COUNTRY.US, _LANG_TO_DEFAULT_COUN[LANG.ES] = COUNTRY.ES, _LANG_TO_DEFAULT_COUN[LANG.FI] = COUNTRY.FI, _LANG_TO_DEFAULT_COUN[LANG.FR] = COUNTRY.FR, _LANG_TO_DEFAULT_COUN[LANG.HE] = COUNTRY.IL, _LANG_TO_DEFAULT_COUN[LANG.HU] = COUNTRY.HU, _LANG_TO_DEFAULT_COUN[LANG.ID] = COUNTRY.ID, _LANG_TO_DEFAULT_COUN[LANG.IT] = COUNTRY.IT, _LANG_TO_DEFAULT_COUN[LANG.JA] = COUNTRY.JP, _LANG_TO_DEFAULT_COUN[LANG.KO] = COUNTRY.KR, _LANG_TO_DEFAULT_COUN[LANG.NL] = COUNTRY.NL, _LANG_TO_DEFAULT_COUN[LANG.NO] = COUNTRY.NO, _LANG_TO_DEFAULT_COUN[LANG.PL] = COUNTRY.PL, _LANG_TO_DEFAULT_COUN[LANG.PT] = COUNTRY.PT, _LANG_TO_DEFAULT_COUN[LANG.RU] = COUNTRY.RU, _LANG_TO_DEFAULT_COUN[LANG.SK] = COUNTRY.SK, _LANG_TO_DEFAULT_COUN[LANG.SV] = COUNTRY.SE, _LANG_TO_DEFAULT_COUN[LANG.TH] = COUNTRY.TH, _LANG_TO_DEFAULT_COUN[LANG.TR] = COUNTRY.TR, _LANG_TO_DEFAULT_COUN[LANG.ZH] = COUNTRY.CN, _LANG_TO_DEFAULT_COUN); var ALLOWED_INSTALLMENT_COUNTRIES = [ COUNTRY.BR, COUNTRY.MX ]; var ALLOWED_INSTALLMENT_PERIOD = { BR: [ 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ], MX: [ 3, 6, 9, 12 ] }; var _LOCALE; var LOCALE = ((_LOCALE = {})[COUNTRY.AD] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH, LANG.AR ], _LOCALE[COUNTRY.AG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AL] = [ LANG.EN ], _LOCALE[COUNTRY.AM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AN] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AO] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AR] = [ LANG.ES, LANG.EN ], _LOCALE[COUNTRY.AT] = [ LANG.DE, LANG.EN ], _LOCALE[COUNTRY.AU] = [ LANG.EN ], _LOCALE[COUNTRY.AW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.AZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BA] = [ LANG.EN ], _LOCALE[COUNTRY.BB] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BE] = [ LANG.EN, LANG.NL, LANG.FR ], _LOCALE[COUNTRY.BF] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BG] = [ LANG.EN ], _LOCALE[COUNTRY.BH] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BI] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BJ] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BN] = [ LANG.EN ], _LOCALE[COUNTRY.BO] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.BR] = [ LANG.PT, LANG.EN ], _LOCALE[COUNTRY.BS] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BT] = [ LANG.EN ], _LOCALE[COUNTRY.BW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.BY] = [ LANG.EN ], _LOCALE[COUNTRY.BZ] = [ LANG.EN, LANG.ES, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.C2] = [ LANG.ZH, LANG.EN ], _LOCALE[COUNTRY.CA] = [ LANG.EN, LANG.FR ], _LOCALE[COUNTRY.CD] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.CG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.CH] = [ LANG.DE, LANG.FR, LANG.EN ], _LOCALE[COUNTRY.CI] = [ LANG.FR, LANG.EN ], _LOCALE[COUNTRY.CK] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.CL] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.CM] = [ LANG.FR, LANG.EN ], _LOCALE[COUNTRY.CN] = [ LANG.ZH ], _LOCALE[COUNTRY.CO] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.CR] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.CV] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.CY] = [ LANG.EN ], _LOCALE[COUNTRY.CZ] = [ LANG.CS, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.DE] = [ LANG.DE, LANG.EN ], _LOCALE[COUNTRY.DJ] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.DK] = [ LANG.DA, LANG.EN ], _LOCALE[COUNTRY.DM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.DO] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.DZ] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.EC] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.EE] = [ LANG.EN, LANG.RU, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.EG] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ER] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ES] = [ LANG.ES, LANG.EN ], _LOCALE[COUNTRY.ET] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.FI] = [ LANG.FI, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.FJ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.FK] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.FM] = [ LANG.EN ], _LOCALE[COUNTRY.FO] = [ LANG.DA, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.FR] = [ LANG.FR, LANG.EN ], _LOCALE[COUNTRY.GA] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GB] = [ LANG.EN ], _LOCALE[COUNTRY.GD] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GF] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GL] = [ LANG.DA, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GN] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GP] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GR] = [ LANG.EL, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GT] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.GW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.GY] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.HK] = [ LANG.EN, LANG.ZH ], _LOCALE[COUNTRY.HN] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.HR] = [ LANG.EN ], _LOCALE[COUNTRY.HU] = [ LANG.HU, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ID] = [ LANG.ID, LANG.EN ], _LOCALE[COUNTRY.IE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.IL] = [ LANG.HE, LANG.EN ], _LOCALE[COUNTRY.IN] = [ LANG.EN ], _LOCALE[COUNTRY.IS] = [ LANG.EN ], _LOCALE[COUNTRY.IT] = [ LANG.IT, LANG.EN ], _LOCALE[COUNTRY.JM] = [ LANG.EN, LANG.ES, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.JO] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.JP] = [ LANG.JA, LANG.EN ], _LOCALE[COUNTRY.KE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KH] = [ LANG.EN ], _LOCALE[COUNTRY.KI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KM] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KN] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KR] = [ LANG.KO, LANG.EN ], _LOCALE[COUNTRY.KW] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KY] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.KZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LA] = [ LANG.EN ], _LOCALE[COUNTRY.LC] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LK] = [ LANG.EN ], _LOCALE[COUNTRY.LS] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LT] = [ LANG.EN, LANG.RU, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LU] = [ LANG.EN, LANG.DE, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.LV] = [ LANG.EN, LANG.RU, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MA] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MC] = [ LANG.FR, LANG.EN ], _LOCALE[COUNTRY.MD] = [ LANG.EN ], _LOCALE[COUNTRY.ME] = [ LANG.EN ], _LOCALE[COUNTRY.MG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MH] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MK] = [ LANG.EN ], _LOCALE[COUNTRY.ML] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MN] = [ LANG.EN ], _LOCALE[COUNTRY.MQ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MR] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MS] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MT] = [ LANG.EN ], _LOCALE[COUNTRY.MU] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MV] = [ LANG.EN ], _LOCALE[COUNTRY.MW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.MX] = [ LANG.ES, LANG.EN ], _LOCALE[COUNTRY.MY] = [ LANG.EN ], _LOCALE[COUNTRY.MZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NA] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NC] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NE] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NF] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NG] = [ LANG.EN ], _LOCALE[COUNTRY.NI] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.NL] = [ LANG.NL, LANG.EN ], _LOCALE[COUNTRY.NO] = [ LANG.NO, LANG.EN ], _LOCALE[COUNTRY.NP] = [ LANG.EN ], _LOCALE[COUNTRY.NR] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NU] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.NZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.OM] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PA] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.PE] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.PF] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PH] = [ LANG.EN ], _LOCALE[COUNTRY.PL] = [ LANG.PL, LANG.EN ], _LOCALE[COUNTRY.PM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PN] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PT] = [ LANG.PT, LANG.EN ], _LOCALE[COUNTRY.PW] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.PY] = [ LANG.ES, LANG.EN ], _LOCALE[COUNTRY.QA] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH, LANG.AR ], _LOCALE[COUNTRY.RE] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.RO] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.RS] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.RU] = [ LANG.RU, LANG.EN ], _LOCALE[COUNTRY.RW] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SA] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SB] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SC] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SE] = [ LANG.SV, LANG.EN ], _LOCALE[COUNTRY.SG] = [ LANG.EN ], _LOCALE[COUNTRY.SH] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SI] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SJ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SK] = [ LANG.SK, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SL] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SN] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SO] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SR] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ST] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.SV] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.SZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TC] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TD] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TG] = [ LANG.FR, LANG.EN, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TH] = [ LANG.TH, LANG.EN ], _LOCALE[COUNTRY.TJ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TN] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TO] = [ LANG.EN ], _LOCALE[COUNTRY.TR] = [ LANG.TR, LANG.EN ], _LOCALE[COUNTRY.TT] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TV] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.TW] = [ LANG.ZH, LANG.EN ], _LOCALE[COUNTRY.TZ] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.UA] = [ LANG.EN, LANG.RU, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.UG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.US] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.UY] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.VA] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.VC] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.VE] = [ LANG.ES, LANG.EN, LANG.FR, LANG.ZH ], _LOCALE[COUNTRY.VG] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.VN] = [ LANG.EN ], _LOCALE[COUNTRY.VU] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.WF] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.WS] = [ LANG.EN ], _LOCALE[COUNTRY.YE] = [ LANG.AR, LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.YT] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ZA] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ZM] = [ LANG.EN, LANG.FR, LANG.ES, LANG.ZH ], _LOCALE[COUNTRY.ZW] = [ LANG.EN ], _LOCALE); }, function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.d(__webpack_exports__, "a", (function() { return JsxHTMLNodeContainer; })); __webpack_require__.d(__webpack_exports__, "c", (function() { return jsxToHTML; })); __webpack_require__.d(__webpack_exports__, "b", (function() { return jsxRender; })); var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22); var _util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(14); function htmlEncode(html) { void 0 === html && (html = ""); return html.toString().replace(/&/g, "&").replace(//g, ">").replace(/"/g, """).replace(/'/g, "'").replace(/\//g, "/"); } var JsxHTMLNode = function() { function JsxHTMLNode(name, props, children) { this.name = void 0; this.props = void 0; this.children = void 0; this.name = name; this.props = props; this.children = children; } var _proto = JsxHTMLNode.prototype; _proto.toString = function() { return "<" + this.name + (this.props ? " " : "") + (this.props ? this.propsToString() : "") + ">" + this.childrenToString() + ""; }; _proto.propsToString = function() { var props = this.props; return props ? Object.keys(props).filter((function(key) { return "innerHTML" !== key && props && !1 !== props[key]; })).map((function(key) { return props && !0 === props[key] ? "" + htmlEncode(key) : props ? htmlEncode(key) + '="' + htmlEncode(props[key]) + '"' : ""; })).join(" ") : ""; }; _proto.childrenToString = function() { if (this.props && this.props.innerHTML) return this.props.innerHTML; if (!this.children) return ""; var result = ""; !function iterate(children) { for (var _i2 = 0; _i2 < children.length; _i2++) { var child = children[_i2]; null != child && (Array.isArray(child) ? iterate(child) : result += child instanceof JsxHTMLNode ? child.toString() : htmlEncode(child)); } }(this.children); return result; }; return JsxHTMLNode; }(); var JsxHTMLNodeContainer = function(_JsxHTMLNode2) { function JsxHTMLNodeContainer(children) { return _JsxHTMLNode2.call(this, "", {}, children) || this; } Object(_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__.a)(JsxHTMLNodeContainer, _JsxHTMLNode2); JsxHTMLNodeContainer.prototype.toString = function() { return this.childrenToString(); }; return JsxHTMLNodeContainer; }(JsxHTMLNode); function jsxToHTML(name, props) { for (var _len = arguments.length, children = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) children[_key - 2] = arguments[_key]; return new JsxHTMLNode(name, props, children); } function jsxRender(template, renderers) { var nodes = Object(_util__WEBPACK_IMPORTED_MODULE_1__.n)(template, /\{\s*([a-z]+)(?::\s*([^} ]+))?\s*\}|([^${}]+)/g, (function(match, type, value, text) { if (type) { if (!renderers[type]) throw new Error("Can not render type: " + type); return renderers[type](value); } return text && text.trim() && renderers.text ? /
/.test(text) ? renderers.break(text) : renderers.text(text) : text; })); return new JsxHTMLNodeContainer(nodes); } }, function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.d(__webpack_exports__, "a", (function() { return promise_ZalgoPromise; })); function utils_isPromise(item) { try { if (!item) return !1; if ("undefined" != typeof Promise && item instanceof Promise) return !0; if ("undefined" != typeof window && "function" == typeof window.Window && item instanceof window.Window) return !1; if ("undefined" != typeof window && "function" == typeof window.constructor && item instanceof window.constructor) return !1; var _toString = {}.toString; if (_toString) { var name = _toString.call(item); if ("[object Window]" === name || "[object global]" === name || "[object DOMWindow]" === name) return !1; } if ("function" == typeof item.then) return !0; } catch (err) { return !1; } return !1; } var dispatchedErrors = []; var possiblyUnhandledPromiseHandlers = []; var activeCount = 0; var flushPromise; function flushActive() { if (!activeCount && flushPromise) { var promise = flushPromise; flushPromise = null; promise.resolve(); } } function startActive() { activeCount += 1; } function endActive() { activeCount -= 1; flushActive(); } var promise_ZalgoPromise = function() { function ZalgoPromise(handler) { var _this = this; this.resolved = void 0; this.rejected = void 0; this.errorHandled = void 0; this.value = void 0; this.error = void 0; this.handlers = void 0; this.dispatching = void 0; this.stack = void 0; this.resolved = !1; this.rejected = !1; this.errorHandled = !1; this.handlers = []; if (handler) { var _result; var _error; var resolved = !1; var rejected = !1; var isAsync = !1; startActive(); try { handler((function(res) { if (isAsync) _this.resolve(res); else { resolved = !0; _result = res; } }), (function(err) { if (isAsync) _this.reject(err); else { rejected = !0; _error = err; } })); } catch (err) { endActive(); this.reject(err); return; } endActive(); isAsync = !0; resolved ? this.resolve(_result) : rejected && this.reject(_error); } } var _proto = ZalgoPromise.prototype; _proto.resolve = function(result) { if (this.resolved || this.rejected) return this; if (utils_isPromise(result)) throw new Error("Can not resolve promise with another promise"); this.resolved = !0; this.value = result; this.dispatch(); return this; }; _proto.reject = function(error) { var _this2 = this; if (this.resolved || this.rejected) return this; if (utils_isPromise(error)) throw new Error("Can not reject promise with another promise"); if (!error) { var _err = error && "function" == typeof error.toString ? error.toString() : {}.toString.call(error); error = new Error("Expected reject to be called with Error, got " + _err); } this.rejected = !0; this.error = error; this.errorHandled || setTimeout((function() { _this2.errorHandled || function(err, promise) { if (-1 === dispatchedErrors.indexOf(err)) { dispatchedErrors.push(err); setTimeout((function() { throw err; }), 1); for (var j = 0; j < possiblyUnhandledPromiseHandlers.length; j++) possiblyUnhandledPromiseHandlers[j](err, promise); } }(error, _this2); }), 1); this.dispatch(); return this; }; _proto.asyncReject = function(error) { this.errorHandled = !0; this.reject(error); return this; }; _proto.dispatch = function() { var resolved = this.resolved, rejected = this.rejected, handlers = this.handlers; if (!this.dispatching && (resolved || rejected)) { this.dispatching = !0; startActive(); var chain = function(firstPromise, secondPromise) { return firstPromise.then((function(res) { secondPromise.resolve(res); }), (function(err) { secondPromise.reject(err); })); }; for (var i = 0; i < handlers.length; i++) { var _handlers$i = handlers[i], onSuccess = _handlers$i.onSuccess, onError = _handlers$i.onError, promise = _handlers$i.promise; var _result2 = void 0; if (resolved) try { _result2 = onSuccess ? onSuccess(this.value) : this.value; } catch (err) { promise.reject(err); continue; } else if (rejected) { if (!onError) { promise.reject(this.error); continue; } try { _result2 = onError(this.error); } catch (err) { promise.reject(err); continue; } } if (_result2 instanceof ZalgoPromise && (_result2.resolved || _result2.rejected)) { var promiseResult = _result2; promiseResult.resolved ? promise.resolve(promiseResult.value) : promise.reject(promiseResult.error); promiseResult.errorHandled = !0; } else utils_isPromise(_result2) ? _result2 instanceof ZalgoPromise && (_result2.resolved || _result2.rejected) ? _result2.resolved ? promise.resolve(_result2.value) : promise.reject(_result2.error) : chain(_result2, promise) : promise.resolve(_result2); } handlers.length = 0; this.dispatching = !1; endActive(); } }; _proto.then = function(onSuccess, onError) { if (onSuccess && "function" != typeof onSuccess && !onSuccess.call) throw new Error("Promise.then expected a function for success handler"); if (onError && "function" != typeof onError && !onError.call) throw new Error("Promise.then expected a function for error handler"); var promise = new ZalgoPromise; this.handlers.push({ promise: promise, onSuccess: onSuccess, onError: onError }); this.errorHandled = !0; this.dispatch(); return promise; }; _proto.catch = function(onError) { return this.then(void 0, onError); }; _proto.finally = function(onFinally) { if (onFinally && "function" != typeof onFinally && !onFinally.call) throw new Error("Promise.finally expected a function"); return this.then((function(result) { return ZalgoPromise.try(onFinally).then((function() { return result; })); }), (function(err) { return ZalgoPromise.try(onFinally).then((function() { throw err; })); })); }; _proto.timeout = function(time, err) { var _this3 = this; if (this.resolved || this.rejected) return this; var timeout = setTimeout((function() { _this3.resolved || _this3.rejected || _this3.reject(err || new Error("Promise timed out after " + time + "ms")); }), time); return this.then((function(result) { clearTimeout(timeout); return result; })); }; _proto.toPromise = function() { if ("undefined" == typeof Promise) throw new TypeError("Could not find Promise"); return Promise.resolve(this); }; _proto.lazy = function() { this.errorHandled = !0; return this; }; ZalgoPromise.resolve = function(value) { return value instanceof ZalgoPromise ? value : utils_isPromise(value) ? new ZalgoPromise((function(resolve, reject) { return value.then(resolve, reject); })) : (new ZalgoPromise).resolve(value); }; ZalgoPromise.reject = function(error) { return (new ZalgoPromise).reject(error); }; ZalgoPromise.asyncReject = function(error) { return (new ZalgoPromise).asyncReject(error); }; ZalgoPromise.all = function(promises) { var promise = new ZalgoPromise; var count = promises.length; var results = [].slice(); if (!count) { promise.resolve(results); return promise; } var chain = function(i, firstPromise, secondPromise) { return firstPromise.then((function(res) { results[i] = res; 0 == (count -= 1) && promise.resolve(results); }), (function(err) { secondPromise.reject(err); })); }; for (var i = 0; i < promises.length; i++) { var prom = promises[i]; if (prom instanceof ZalgoPromise) { if (prom.resolved) { results[i] = prom.value; count -= 1; continue; } } else if (!utils_isPromise(prom)) { results[i] = prom; count -= 1; continue; } chain(i, ZalgoPromise.resolve(prom), promise); } 0 === count && promise.resolve(results); return promise; }; ZalgoPromise.hash = function(promises) { var result = {}; var awaitPromises = []; var _loop = function(key) { if (promises.hasOwnProperty(key)) { var value = promises[key]; utils_isPromise(value) ? awaitPromises.push(value.then((function(res) { result[key] = res; }))) : result[key] = value; } }; for (var key in promises) _loop(key); return ZalgoPromise.all(awaitPromises).then((function() { return result; })); }; ZalgoPromise.map = function(items, method) { return ZalgoPromise.all(items.map(method)); }; ZalgoPromise.onPossiblyUnhandledException = function(handler) { return function(handler) { possiblyUnhandledPromiseHandlers.push(handler); return { cancel: function() { possiblyUnhandledPromiseHandlers.splice(possiblyUnhandledPromiseHandlers.indexOf(handler), 1); } }; }(handler); }; ZalgoPromise.try = function(method, context, args) { if (method && "function" != typeof method && !method.call) throw new Error("Promise.try expected a function"); var result; startActive(); try { result = method.apply(context, args || []); } catch (err) { endActive(); return ZalgoPromise.reject(err); } endActive(); return ZalgoPromise.resolve(result); }; ZalgoPromise.delay = function(_delay) { return new ZalgoPromise((function(resolve) { setTimeout(resolve, _delay); })); }; ZalgoPromise.isPromise = function(value) { return !!(value && value instanceof ZalgoPromise) || utils_isPromise(value); }; ZalgoPromise.flush = function() { return function(Zalgo) { var promise = flushPromise = flushPromise || new Zalgo; flushActive(); return promise; }(ZalgoPromise); }; return ZalgoPromise; }(); }, function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.d(__webpack_exports__, "G", (function() { return isSupportedNativeBrowser; })); __webpack_require__.d(__webpack_exports__, "J", (function() { return util.j; })); __webpack_require__.d(__webpack_exports__, "L", (function() { return util.k; })); __webpack_require__.d(__webpack_exports__, "W", (function() { return util.s; })); __webpack_require__.d(__webpack_exports__, "I", (function() { return util.i; })); __webpack_require__.d(__webpack_exports__, "S", (function() { return util.o; })); __webpack_require__.d(__webpack_exports__, "f", (function() { return util.c; })); __webpack_require__.d(__webpack_exports__, "b", (function() { return util.a; })); __webpack_require__.d(__webpack_exports__, "U", (function() { return util.q; })); __webpack_require__.d(__webpack_exports__, "V", (function() { return util.r; })); __webpack_require__.d(__webpack_exports__, "N", (function() { return util.l; })); __webpack_require__.d(__webpack_exports__, "g", (function() { return util.d; })); __webpack_require__.d(__webpack_exports__, "B", (function() { return initLogger; })); __webpack_require__.d(__webpack_exports__, "T", (function() { return setLogLevel; })); __webpack_require__.d(__webpack_exports__, "i", (function() { return getBrowser; })); __webpack_require__.d(__webpack_exports__, "D", (function() { return isEligible; })); __webpack_require__.d(__webpack_exports__, "e", (function() { return checkRecognizedBrowser; })); __webpack_require__.d(__webpack_exports__, "d", (function() { return checkForDeprecatedIntegration; })); __webpack_require__.d(__webpack_exports__, "c", (function() { return checkForCommonErrors; })); __webpack_require__.d(__webpack_exports__, "H", (function() { return dom.i; })); __webpack_require__.d(__webpack_exports__, "o", (function() { return dom.c; })); __webpack_require__.d(__webpack_exports__, "p", (function() { return dom.d; })); __webpack_require__.d(__webpack_exports__, "K", (function() { return dom.j; })); __webpack_require__.d(__webpack_exports__, "r", (function() { return dom.f; })); __webpack_require__.d(__webpack_exports__, "X", (function() { return dom.l; })); __webpack_require__.d(__webpack_exports__, "h", (function() { return dom.a; })); __webpack_require__.d(__webpack_exports__, "P", (function() { return dom.k; })); __webpack_require__.d(__webpack_exports__, "j", (function() { return dom.b; })); __webpack_require__.d(__webpack_exports__, "C", (function() { return dom.h; })); __webpack_require__.d(__webpack_exports__, "q", (function() { return dom.e; })); __webpack_require__.d(__webpack_exports__, "u", (function() { return dom.g; })); __webpack_require__.d(__webpack_exports__, "R", (function() { return request; })); __webpack_require__.d(__webpack_exports__, "A", (function() { return getThrottle; })); __webpack_require__.d(__webpack_exports__, "v", (function() { return getReturnToken; })); __webpack_require__.d(__webpack_exports__, "z", (function() { return session.e; })); __webpack_require__.d(__webpack_exports__, "y", (function() { return session.d; })); __webpack_require__.d(__webpack_exports__, "x", (function() { return session.c; })); __webpack_require__.d(__webpack_exports__, "k", (function() { return session.a; })); __webpack_require__.d(__webpack_exports__, "M", (function() { return openMetaFrame; })); __webpack_require__.d(__webpack_exports__, "s", (function() { return getRememberedFunding; })); __webpack_require__.d(__webpack_exports__, "Q", (function() { return rememberFunding; })); __webpack_require__.d(__webpack_exports__, "E", (function() { return isFundingRemembered; })); __webpack_require__.d(__webpack_exports__, "O", (function() { return precacheRememberedFunding; })); __webpack_require__.d(__webpack_exports__, "t", (function() { return getRenderedButtons; })); __webpack_require__.d(__webpack_exports__, "l", (function() { return getCurrentScript; })); __webpack_require__.d(__webpack_exports__, "w", (function() { return getScriptVersion; })); __webpack_require__.d(__webpack_exports__, "m", (function() { return getCurrentScriptUrl; })); __webpack_require__.d(__webpack_exports__, "n", (function() { return getDomainSetting; })); __webpack_require__.d(__webpack_exports__, "a", (function() { return security.a; })); __webpack_require__.d(__webpack_exports__, "F", (function() { return security.b; })); var src = __webpack_require__(7); var belter_src = __webpack_require__(11); function isSupportedNativeBrowser() { var userAgent = Object(belter_src.b)(); return !(!Object(belter_src.p)(userAgent) || Object(belter_src.l)() || (!Object(belter_src.j)() || !Object(belter_src.m)()) && (!Object(belter_src.d)() || !Object(belter_src.e)())); } var util = __webpack_require__(14); var post_robot_src = __webpack_require__(15); var client = __webpack_require__(4); var config = __webpack_require__(5); var constants = __webpack_require__(0); var session = __webpack_require__(21); var dom = __webpack_require__(25); var security = __webpack_require__(29); var PAGE_TYPES = { HOME: "home", PRODUCT: "product", CART: "cart", CHECKOUT: "checkout", PRODUCT_LISTING: "product-listing", SEARCH_RESULTS: "search-results", PRODUCT_DETAILS: "product-details", MINI_CART: "mini-cart" }; var getCurrentScript = Object(util.i)((function() { var localSDKUrl = config.a.localSDKUrl; var scripts = [].slice.call(document.getElementsByTagName("script")); for (var _i2 = 0; _i2 < scripts.length; _i2++) { var script = scripts[_i2]; if (script.src && (script.src.replace(/^https?:/, "").split("?")[0] === config.a.scriptUrl || script.hasAttribute("data-paypal-checkout"))) return script; if (script.src && -1 !== script.src.indexOf("paypal.checkout.v4.js")) return script; if (config.a.env === constants.t.LOCAL && localSDKUrl && script.src === localSDKUrl) return script; } document.currentScript && Object(client.f)("current_script_not_recognized", { src: document.currentScript.src }); })); function getScriptVersion() { return Boolean(getCurrentScript()) ? "4" : "4.0.344"; } function getCurrentScriptUrl() { var script = getCurrentScript(); if (script && "string" == typeof script.src) { var scriptUrl = script.src; 0 === scriptUrl.indexOf("http://www.paypalobjects.com") && (scriptUrl = scriptUrl.replace("http://", "https://")); 0 === scriptUrl.indexOf("//www.paypalobjects.com") && (scriptUrl = "https:" + scriptUrl); return scriptUrl; } return "https://www.paypalobjects.com/api/checkout.4.0.344.js"; } function getDomainSetting(name, def) { var hostname = window.xchild ? window.xchild.getParentDomain() : Object(src.h)(); if (config.a.domain_settings) for (var _i4 = 0, _Object$keys2 = Object.keys(config.a.domain_settings); _i4 < _Object$keys2.length; _i4++) { var domain = _Object$keys2[_i4]; if (Object(util.b)(hostname, domain)) return config.a.domain_settings[domain][name]; } return def; } function getRefererDomain() { return window.xchild && window.xchild.getParentDomain ? window.xchild.getParentDomain() : window.location.host; } var setupProxyLogTransport = Object(util.k)((function() { Object(client.o)(function(name, win, originalMethod) { if (win && Object(src.h)() === config.a.paypalDomain && !Object(src.v)(win)) { win && Object(post_robot_src.send)(win, "proxy_log", { originalMethod: originalMethod }).catch(util.j); return originalMethod; } var methods = []; Object(post_robot_src.on)("proxy_log", { domain: config.b }, (function(_ref) { methods.push(_ref.data.originalMethod); })); return function() { var _arguments = arguments, _this = this; return (methods = methods.filter((function(method) { return !Object(src.z)(method.source); }))).length ? methods[methods.length - 1].apply(this, arguments).catch((function() { return originalMethod.apply(_this, _arguments); })) : originalMethod.apply(this, arguments); }; }(0, Object(src.n)(window), Object(client.i)())); })); function initLogger() { setupProxyLogTransport(); Object(client.c)((function() { return { referer: getRefererDomain(), host: window.location.host, path: window.location.pathname, env: config.a.env, country: config.a.locale.country, lang: config.a.locale.lang, uid: Object(session.c)(), ver: "4.0.344" }; })); Object(client.a)((function() { return { "x-app-name": "checkoutjs" }; })); Object(client.b)((function() { return { state: config.a.state }; })); Object(client.d)((function(payload) { var _ref; void 0 === payload && (payload = {}); var sessionID = Object(session.c)(); var paymentToken = function() { if (window.root && window.root.token) return window.root.token; if (Object(security.b)()) { var queryToken = Object(dom.f)("token"); if (queryToken) return queryToken; } }(); var buttonSessionID = payload[constants.u.KEY.BUTTON_SESSION_UID] || Object(session.a)(); var contextType; var contextID; if (paymentToken) { contextType = constants.u.CONTEXT_TYPE[constants.C.EC_TOKEN]; contextID = paymentToken; } else if (buttonSessionID) { contextType = constants.u.CONTEXT_TYPE.BUTTON_SESSION_ID; contextID = buttonSessionID; } else { contextType = payload[constants.u.KEY.CONTEXT_TYPE]; contextID = payload[constants.u.KEY.CONTEXT_ID]; } return (_ref = {})[constants.u.KEY.FEED] = constants.u.FEED.CHECKOUTJS, _ref[constants.u.KEY.DATA_SOURCE] = constants.u.DATA_SOURCE.CHECKOUT, _ref[constants.u.KEY.CONTEXT_TYPE] = contextType, _ref[constants.u.KEY.CONTEXT_ID] = contextID, _ref[constants.u.KEY.SELLER_ID] = config.a.merchantID, _ref[constants.u.KEY.SESSION_UID] = sessionID, _ref[constants.u.KEY.BUTTON_SESSION_UID] = buttonSessionID, _ref[constants.u.KEY.VERSION] = config.a.version, _ref[constants.u.KEY.TOKEN] = paymentToken, _ref[constants.u.KEY.PAGE_TYPE] = function() { var script = getCurrentScript(); if (script && script.hasAttribute("data-page-type")) { var pageType = script.getAttribute("data-page-type").toLowerCase(); if (-1 === Object(belter_src.r)(PAGE_TYPES).indexOf(pageType) && pageType.length) throw new Error("Invalid page type, '" + pageType + "'"); return pageType; } return ""; }(), _ref[constants.u.KEY.REFERER] = getRefererDomain(), _ref[constants.u.KEY.TIMESTAMP] = Date.now().toString(), _ref; })); window.location.protocol !== src.a.FILE && Object(client.l)({ uri: config.a.loggerUrl, heartbeat: !1, logPerformance: !1, prefix: "ppxo", logLevel: "warn" }); } function setLogLevel(logLevel) { if (-1 === client.m.indexOf(logLevel)) throw new Error("Invalid logLevel: " + logLevel); config.a.logLevel = logLevel; client.e.logLevel = logLevel; post_robot_src.CONFIG.LOG_LEVEL = logLevel; window.LOG_LEVEL = logLevel; } var bowserCache = {}; function getBowser() { var userAgent = Object(belter_src.b)(); if (bowserCache[userAgent]) return bowserCache[userAgent]; delete __webpack_require__.c[46]; var bowser = __webpack_require__(46); bowserCache[userAgent] = bowser; return bowser; } function getBrowser() { var bowser = getBowser(); for (var _i2 = 0, _Object$keys2 = Object.keys(config.a.SUPPORTED_BROWSERS); _i2 < _Object$keys2.length; _i2++) { var browser = _Object$keys2[_i2]; if (bowser[browser]) return { browser: browser, version: bowser.version }; } return {}; } var eligibilityResults = {}; function isEligible() { if (Object(belter_src.i)()) return !1; var userAgent = window.navigator.userAgent; if (userAgent && eligibilityResults.hasOwnProperty(userAgent)) return eligibilityResults[userAgent]; var result = function() { if (Object(belter_src.i)()) return !1; var bowser = getBowser(); var _getBrowser = getBrowser(), browser = _getBrowser.browser, version = _getBrowser.version; return !browser || !version || -1 !== bowser.compareVersions([ version, config.a.SUPPORTED_BROWSERS[browser] ]); }(); eligibilityResults[userAgent] = result; return result; } var checkRecognizedBrowser = Object(util.k)((function(state) { if (!getBrowser().browser) { var _getBowser = getBowser(), name = _getBowser.name, version = _getBowser.version, mobile = _getBowser.mobile, android = _getBowser.android, ios = _getBowser.ios; Object(client.k)("unrecognized_browser_" + state, { name: name, version: version, mobile: mobile, android: android, ios: ios }); Object(client.h)(); } })); function logWarn(err) { if (window.console) { if (window.console.warn) return window.console.warn(err); if (window.console.log) return window.console.log(err); } } function checkForDeprecatedIntegration() { var scripts = [].slice.call(document.getElementsByTagName("script")); for (var _i2 = 0; _i2 < scripts.length; _i2++) { var _script$attributes$ty; if ("application/x-component" === (null == (_script$attributes$ty = scripts[_i2].attributes.type) ? void 0 : _script$attributes$ty.value)) { Object(client.q)("deprecated_integration_application_xcomponent"); console.error("\n This integration pattern using '